use zmath::{Vec3, Quat};
use std::f32;

fn main() {
    let mut q = Quat::new(1.0, Vec3::zero());
    q *= Quat::from_angle_axis(f32::consts::FRAC_PI_8, Vec3(0.0, 1.0, 0.0));
    q *= Quat::from_angle_axis(f32::consts::FRAC_PI_8, Vec3(0.0, 0.0, 1.0));

    let a = Vec3(2.0, 0.0, 0.0);
    println!("{}", (q * Quat::from(a) * q.inv()).v);
}